github.com/krum110487/go-htaccess@v0.0.0-20240316004156-60641c8e7598/tests/data/php/php_delete_later if no issues found/news.txt (about) 1 PHP NEWS 2 ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 3 14 Mar 2024, PHP 8.3.4 4 5 - Core: 6 . Fix ZTS persistent resource crashes on shutdown. (nielsdos) 7 8 - Curl: 9 . Fix failing tests due to string changes in libcurl 8.6.0. (Ayesh) 10 11 - DOM: 12 . Fix unlikely memory leak in case of namespace removal with extremely deep 13 trees. (nielsdos) 14 . Fix reference access in dimensions for DOMNodeList and DOMNodeMap. 15 (nielsdos) 16 17 - Fileinfo: 18 . Fixed bug GH-13344 (finfo::buffer(): Failed identify data 0:(null), 19 backport). (nielsdos) 20 21 - FPM: 22 . Fixed bug #75712 (getenv in php-fpm should not read $_ENV, $_SERVER). 23 (Jakub Zelenka) 24 25 - GD: 26 . Fixed bug GH-12019 (detection of image formats in system gd library). 27 (Michael Orlitzky) 28 29 - MySQLnd: 30 . Fixed bug GH-11950 ([mysqlnd] Fixed not to set CR_MALFORMED_PACKET to error 31 if CR_SERVER_GONE_ERROR is already set). (Saki Takamachi) 32 33 - PDO: 34 . Fix various PDORow bugs. (Girgias) 35 36 - PGSQL: 37 . Fixed bug GH-13354 (pg_execute/pg_send_query_params/pg_send_execute 38 with null value passed by reference). (George Barbarosie) 39 40 - SPL: 41 . Fixed bug GH-13531 (Unable to resize SplfixedArray after being unserialized 42 in PHP 8.2.15). (nielsdos) 43 44 - Standard: 45 . Fixed bug GH-13279 (Instable array during in-place modification in uksort). 46 (ilutov) 47 . Fixed array key as hash to string (case insensitive) comparison typo 48 for the second operand buffer size (albeit unused for now). (A. Slepykh) 49 50 - XML: 51 . Fixed bug GH-13517 (Multiple test failures when building with 52 --with-expat). (nielsdos) 53 54 15 Feb 2024, PHP 8.3.3 55 56 - Core: 57 . Fixed timer leak in zend-max-execution-timers builds. (withinboredom) 58 . Fixed bug GH-12349 (linking failure on ARM with mold). (Jan Palus) 59 . Fixed bug GH-13097 (Anonymous class reference in trigger_error / thrown 60 Exception). (nielsdos) 61 . Fixed bug GH-13177 (PHP 8.3.2: final private constructor not allowed 62 when used in trait). (nielsdos) 63 . Fixed bug GH-13215 (GCC 14 build failure). (Remi) 64 65 - Curl: 66 . Fix missing error check in curl_multi_init(). (divinity76) 67 68 - FPM: 69 . Fixed bug GH-12996 (Incorrect SCRIPT_NAME with Apache ProxyPassMatch when 70 plus in path). (Jakub Zelenka) 71 72 - GD: 73 . Fixed bug GH-10344 (imagettfbbox(): Could not find/open font UNC path). 74 (nielsdos) 75 . Fixed bug GH-10614 (imagerotate will turn the picture all black, when 76 rotated 90). (nielsdos) 77 78 - LibXML: 79 . Fix crashes with entity references and predefined entities. (nielsdos) 80 81 - MySQLnd: 82 . Fixed bug GH-12107 (When running a stored procedure (that returns a result 83 set) twice, PHP crashes). (nielsdos) 84 85 - Opcache: 86 . Fixed bug GH-13145 (strtok() is not comptime). (ilutov) 87 . Fixed type inference of range(). (ilutov) 88 . Fixed bug GH-13232 (Segmentation fault will be reported when JIT is off but 89 JIT_debug is still on). (nielsdos) 90 91 - OpenSSL: 92 . Fixed LibreSSL undefined reference when OPENSSL_NO_ENGINE not set. 93 (David Carlier). 94 95 - PDO_Firebird: 96 . Fix GH-13119 (Changed to convert float and double values into strings using 97 `H` format). (SakiTakamachi) 98 99 - Phar: 100 . Fixed bug #71465 (PHAR doesn't know about litespeed). (nielsdos) 101 . Fixed bug GH-13037 (PharData incorrectly extracts zip file). (nielsdos) 102 103 - Random: 104 . Fixed bug GH-13138 (Randomizer::pickArrayKeys() does not detect broken 105 engines). (timwolla) 106 107 - Session: 108 . Fixed bug GH-12504 (Corrupted session written when there's a fatal error 109 in autoloader). (nielsdos) 110 111 - Standard: 112 . Fixed bug GH-13094 (range(9.9, '0') causes segmentation fault). (nielsdos) 113 114 - Streams: 115 . Fixed bug GH-13071 (Copying large files using mmap-able source streams may 116 exhaust available memory and fail). (nielsdos) 117 118 18 Jan 2024, PHP 8.3.2 119 120 - Core: 121 . Fixed bug GH-12953 (false positive SSA integrity verification failed when 122 loading composer classmaps with more than 11k elements). (nielsdos) 123 . Fixed bug GH-12999 (zend_strnlen build when strnlen is unsupported). 124 (rainerjung) 125 . Fixed bug GH-12966 (missing cross-compiling 3rd argument so Autoconf 126 doesn't emit warnings). (Peter Kokot) 127 . Fixed bug GH-12854 (8.3 - as final trait-used method does not correctly 128 report visibility in Reflection). (nielsdos) 129 130 - Cli: 131 . Fix incorrect timeout in built-in web server when using router script and 132 max_input_time. (ilutov) 133 134 - DOM: 135 . Fixed bug GH-12870 (Creating an xmlns attribute results in a DOMException). 136 (nielsdos) 137 . Fix crash when toggleAttribute() is used without a document. (nielsdos) 138 . Fix crash in adoptNode with attribute references. (nielsdos) 139 . Fixed bug GH-13012 (DOMNode::isEqualNode() is incorrect when attribute 140 order is different). (nielsdos) 141 142 - FFI: 143 . Fixed bug GH-9698 (stream_wrapper_register crashes with FFI\CData). 144 (Jakub Zelenka) 145 . Fixed bug GH-12905 (FFI::new interacts badly with observers). (nielsdos) 146 147 - GD: 148 . Fixed GH-13082 undefined behavior with GdFont instances handling with 149 imageload* and imagechar*. (David Carlier) 150 151 - Intl: 152 . Fixed GH-12943 (IntlDateFormatter::__construct accepts 'C' as valid locale). 153 (David Carlier) 154 155 - Hash: 156 . Fixed bug GH-12936 (hash() function hangs endlessly if using sha512 on 157 strings >= 4GiB). (nielsdos) 158 159 - MBString: 160 . When operating on a string with invalid encoding, mb_substr (as well 161 as mb_strstr and its variants) defines character indices in the same 162 way as other mbstring functions such as mb_strpos. (Alex Dowad) 163 164 - ODBC: 165 . Fix crash on Apache shutdown with persistent connections. (nielsdos) 166 167 - Opcache: 168 . Fixed oss-fuzz #64727 (JIT undefined array key warning may overwrite DIM 169 with NULL when DIM is the same var as result). (ilutov) 170 . Added workaround for SELinux mprotect execheap issue. 171 See https://bugzilla.kernel.org/show_bug.cgi?id=218258. (ilutov) 172 173 - OpenSSL: 174 . Fixed bug GH-12987 (openssl_csr_sign might leak new cert on error). 175 (Jakub Zelenka) 176 177 - PDO: 178 . Fix GH-12969 (Fixed PDO::getAttribute() to get PDO::ATTR_STRINGIFY_FETCHES). 179 (SakiTakamachi) 180 181 - PDO_ODBC: 182 . Fixed bug GH-12767 (Unable to turn on autocommit mode with setAttribute()). 183 (SakiTakamachi) 184 185 - PGSQL: 186 . Fixed auto_reset_persistent handling and allow_persistent type. (David Carlier) 187 . Fixed bug GH-12974 (Apache crashes on shutdown when using pg_pconnect()). 188 (nielsdos) 189 190 - Phar: 191 . Fixed bug #77432 (Segmentation fault on including phar file). (nielsdos) 192 193 - PHPDBG: 194 . Fixed bug GH-12962 (Double free of init_file in phpdbg_prompt.c). (nielsdos) 195 196 - SimpleXML: 197 . Fix getting the address of an uninitialized property of a SimpleXMLElement 198 resulting in a crash. (nielsdos) 199 . Fixed bug GH-12929 (SimpleXMLElement with stream_wrapper_register can 200 segfault). (nielsdos) 201 202 - Tidy: 203 . Fixed bug GH-12980 (tidynode.props.attribute is missing 204 "Boolean Attributes" and empty attributes). (nielsdos) 205 206 07 Dec 2023, PHP 8.3.1RC1 207 208 - Core: 209 . Fixed bug GH-12758 / GH-12768 (Invalid opline in OOM handlers within 210 ZEND_FUNC_GET_ARGS and ZEND_BIND_STATIC). (Florian Engelhardt) 211 . Fix various missing NULL checks. (nielsdos, dstogov) 212 . Fixed bug GH-12835 (Leak of call->extra_named_params on internal __call). 213 (ilutov) 214 . Fixed bug GH-12826 (Weird pointers issue in nested loops). (nielsdos) 215 216 - FPM: 217 . Fixed bug GH-12705 (Segmentation fault in fpm_status_export_to_zval). 218 (Patrick Prasse) 219 220 - FTP: 221 . Fixed bug GH-9348 (FTP & SSL session reuse). (nielsdos) 222 223 - LibXML: 224 . Fixed test failures for libxml2 2.12.0. (nielsdos) 225 226 - MySQLnd: 227 . Avoid using uninitialised struct. (mikhainin) 228 . Fixed bug GH-12791 (Possible dereference of NULL in MySQLnd debug code). 229 (nielsdos) 230 231 - Opcache: 232 . Fixed JIT bug (Function JIT emits "Uninitialized string offset" warning 233 at the same time as invalid offset Error). (Girgias) 234 . Fixed JIT bug (JIT emits "Attempt to assign property of non-object" 235 warning at the same time as Error is being thrown). (Girgias) 236 237 - PDO PGSQL: 238 . Fixed the default value of $fetchMode in PDO::pgsqlGetNotify() (kocsismate) 239 240 - SOAP: 241 . Fixed bug GH-12838 ([SOAP] Temporary WSDL cache files not being deleted). 242 (nielsdos) 243 244 - Standard 245 . Fixed GH-12745 (http_build_query() default null argument for $arg_separator 246 is implicitly coerced to string). (Girgias) 247 248 23 Nov 2023, PHP 8.3.0 249 250 - Bcmath 251 . Fixed GH-11761 (removing trailing zeros from numbers) (jorgsowa) 252 253 - CLI: 254 . Added pdeathsig to builtin server to terminate workers when the master 255 process is killed. (ilutov) 256 . Fixed bug GH-11104 (STDIN/STDOUT/STDERR is not available for CLI without 257 a script). (nielsdos) 258 . Implement GH-10024 (support linting multiple files at once using php -l). 259 (nielsdos) 260 261 - Core: 262 . Fix GH-11388 (Allow "final" modifier when importing a method from a trait). 263 (nielsdos) 264 . Fixed bug GH-11406 (segfault with unpacking and magic method closure). 265 (nielsdos) 266 . Fixed bug GH-9388 (Improve unset property and __get type incompatibility 267 error message). (ilutov) 268 . SA_ONSTACK is now set for signal handlers to be friendlier to other 269 in-process code such as Go's cgo. (Kévin Dunglas) 270 . SA_ONSTACK is now set when signals are disabled. (Kévin Dunglas) 271 . Fix GH-9649: Signal handlers now do a no-op instead of crashing when 272 executed on threads not managed by TSRM. (Kévin Dunglas) 273 . Added shadow stack support for fibers. (Chen Hu) 274 . Fix bug GH-9965 (Fix accidental caching of default arguments with side 275 effects). (ilutov) 276 . Implement GH-10217 (Use strlen() for determining the class_name length). 277 (Dennis Buteyn) 278 . Fix bug GH-8821 (Improve line numbers for errors in constant expressions). 279 (ilutov) 280 . Fix bug GH-10083 (Allow comments between & and parameter). (ilutov) 281 . Zend Max Execution Timers is now enabled by default for ZTS builds on 282 Linux. (Kévin Dunglas) 283 . Fix bug GH-10469 (Disallow .. in open_basedir paths set at runtime). 284 (ilutov) 285 . Fix bug GH-10168, GH-10582 (Various segfaults with destructors and VM return 286 values). (dstogov, nielsdos, ilutov) 287 . Fix bug GH-10935 (Use of trait doesn't redeclare static property if class 288 has inherited it from its parent). (ilutov) 289 . Fix bug GH-11154 (Negative indices on empty array don't affect next chosen 290 index). (ColinHDev) 291 . Fix bug GH-8846 (Implement delayed early binding for classes without 292 parents). (ilutov) 293 . Fix bug #79836 (Segfault in concat_function). (nielsdos) 294 . Fix bug #81705 (type confusion/UAF on set_error_handler with concat 295 operation). (nielsdos) 296 . Fix GH-11348 (Closure created from magic method does not accept named 297 arguments). (nielsdos) 298 . Fix GH-11388 (Allow "final" modifier when importing a method from a trait). 299 (nielsdos) 300 . Fixed bug GH-11406 (segfault with unpacking and magic method closure). 301 (nielsdos) 302 . Fixed bug GH-11507 (String concatenation performance regression in 8.3). 303 (nielsdos) 304 . Fixed GH-11488 (Missing "Optional parameter before required" deprecation on 305 union null type). (ilutov) 306 . Implement the #[\Override] attribute RFC. (timwolla) 307 . Fixed bug GH-11601 (Incorrect handling of unwind and graceful exit 308 exceptions). (ilutov) 309 . Added zend_call_stack_get implementation for OpenBSD. (David Carlier) 310 . Add stack limit check in zend_eval_const_expr(). (Arnaud) 311 . Expose time spent collecting cycles in gc_status(). (Arnaud) 312 . Remove WeakMap entries whose key is only reachable through the entry value. 313 (Arnaud) 314 . Resolve open_basedir paths on INI update. (ilutov) 315 . Fixed oss-fuzz #60741 (Leak in open_basedir). (ilutov) 316 . Fixed segfault during freeing of some incompletely initialized objects due 317 to OOM error (PDO, SPL, XSL). (ilutov) 318 . Introduced Zend guard recursion protection to fix __debugInfo issue. 319 (Jakub Zelenka) 320 . Fixed oss-fuzz #61712 (assertion failure with error handler during binary 321 op). (nielsdos) 322 . Fixed GH-11847 (DTrace enabled build is broken). (Filip Zrůst) 323 . Fixed OSS Fuzz #61865 (Undef variable in ++/-- for declared property 324 that is unset in error handler). (Girgias) 325 . Fixed warning emitted when checking if a user stream is castable. (Girgias) 326 . Fixed bug GH-12123 (Compile error on MacOS with C++ extension when using 327 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX). (kocsismate) 328 . Fixed bug GH-12189 (#[Override] attribute in trait does not check for 329 parent class implementations). (timwolla) 330 . Fixed OSS Fuzz #62294 (Unsetting variable after ++/-- on string variable 331 warning). (Girgias) 332 . Fixed buffer underflow when compiling memoized expression. (ilutov) 333 . Fixed oss-fuzz #63802 (OP1 leak in error path of post inc/dec). (ilutov) 334 335 - Curl: 336 . Added Curl options and constants up to (including) version 7.87. 337 (nielsdos, adoy) 338 339 - Date: 340 . Implement More Appropriate Date/Time Exceptions RFC. (Derick) 341 342 - DOM: 343 . Fix bug GH-8388 (DOMAttr unescapes character reference). (Tim Starling) 344 . Fix bug GH-11308 (getElementsByTagName() is O(N^2)). (nielsdos) 345 . Fix #79700 (wrong use of libxml oldNs leads to performance problem). 346 (nielsdos) 347 . Fix #77894 (DOMNode::C14N() very slow on generated DOMDocuments even after 348 normalisation). (nielsdos) 349 . Revert changes to DOMAttr::$value and DOMAttr::$nodeValue expansion. 350 (nielsdos) 351 . Fixed bug GH-11500 (Namespace reuse in createElementNS() generates wrong 352 output). (nielsdos) 353 . Implemented DOMDocument::adoptNode(). Previously this always threw a 354 "not yet implemented" exception. (nielsdos) 355 . Fixed bug GH-9628 (Implicitly removing nodes from \DOMDocument breaks 356 existing references). (nielsdos) 357 . Added DOMNode::contains() and DOMNameSpaceNode::contains(). (nielsdos) 358 . Added DOMElement::getAttributeNames(). (nielsdos) 359 . Added DOMNode::getRootNode(). (nielsdos) 360 . Added DOMElement::className and DOMElement::id. (nielsdos) 361 . Added DOMParentNode::replaceChildren(). (nielsdos) 362 . Added DOMNode::isConnected and DOMNameSpaceNode::isConnected. (nielsdos) 363 . Added DOMNode::parentElement and DOMNameSpaceNode::parentElement. 364 (nielsdos) 365 . Added DOMNode::isEqualNode(). (nielsdos) 366 . Added DOMElement::insertAdjacentElement() and 367 DOMElement::insertAdjacentText(). (nielsdos) 368 . Added DOMElement::toggleAttribute(). (nielsdos) 369 . Fixed bug GH-11792 (LIBXML_NOXMLDECL is not implemented or broken). 370 (nielsdos) 371 . adoptNode now respects the strict error checking property. (nielsdos) 372 . Align DOMChildNode parent checks with spec. (nielsdos) 373 . Fixed bug #80927 (Removing documentElement after creating attribute node: 374 possible use-after-free). (nielsdos) 375 . Fix various namespace prefix conflict resolution bugs. (nielsdos) 376 . Fix calling createAttributeNS() without prefix causing the default 377 namespace of the element to change. (nielsdos) 378 . Fixed GH-11952 (Confusing warning when blocking entity loading via 379 libxml_set_external_entity_loader). (nielsdos) 380 . Fix broken cache invalidation with deallocated and reallocated document 381 node. (nielsdos) 382 . Fix compile error when php_libxml.h header is included in C++. 383 (Remi, nielsdos) 384 . Fixed bug #47531 (No way of removing redundant xmlns: declarations). 385 (nielsdos) 386 387 - Exif: 388 . Removed unneeded codepaths in exif_process_TIFF_in_JPEG(). (nielsdos) 389 390 - FFI: 391 . Implement GH-11934 (Allow to pass CData into struct and/or union fields). 392 (nielsdos, KapitanOczywisty) 393 394 - Fileinfo: 395 . Upgrade bundled libmagic to 5.43. (Anatol) 396 . Fix GH-11408 (Unable to build PHP 8.3.0 alpha 1 / fileinfo extension). 397 (nielsdos) 398 399 - FPM: 400 . The status.listen shared pool now uses the same php_values (including 401 expose_php) and php_admin_value as the pool it is shared with. (dwxh) 402 . Added warning to log when fpm socket was not registered on the expected 403 path. (Joshua Behrens, Jakub Zelenka) 404 . Fixed bug #76067 (system() function call leaks php-fpm listening sockets). 405 (Mikhail Galanin, Jakub Zelenka) 406 . Fixed GH-12077 (PHP 8.3.0RC1 borked socket-close-on-exec.phpt). 407 (Jakub Zelenka) 408 409 - GD: 410 . Removed imagerotate "ignore_transparent" argument since it has no effect. 411 (David Carlier) 412 413 - Intl: 414 . Added pattern format error infos for numfmt_set_pattern. (David Carlier) 415 . Added MIXED_NUMBERS and HIDDEN_OVERLAY constants for 416 the Spoofchecker's class. (David Carlier) 417 . Updated datefmt_set_timezone/IntlDateformatter::setTimezone returns type. 418 (David Carlier). 419 . Updated IntlBreakInterator::setText return type. (David Carlier) 420 . Updated IntlChar::enumCharNames return type. (David Carlier) 421 . Removed the BC break on IntlDateFormatter::construct which threw an 422 exception with an invalid locale. (David Carlier) 423 424 - JSON: 425 . Added json_validate(). (Juan Morales) 426 427 - LDAP: 428 . Deprecate calling ldap_connect() with separate hostname and port. 429 (heiglandreas) 430 431 - LibXML: 432 . Fix compile error with -Werror=incompatible-function-pointer-types and 433 old libxml2. (nielsdos) 434 435 - MBString: 436 . mb_detect_encoding is better able to identify the correct encoding for 437 Turkish text. (Alex Dowad) 438 . mb_detect_encoding's "non-strict" mode now behaves as described in the 439 documentation. Previously, it would return false if the same byte 440 (for example, the first byte) of the input string was invalid in all 441 candidate encodings. More generally, it would eliminate candidate 442 encodings from consideration when an invalid byte was seen, and if the 443 same input byte eliminated all remaining encodings still under 444 consideration, it would return false. On the other hand, if all candidate 445 encodings but one were eliminated from consideration, it would return the 446 last remaining one without regard for how many encoding errors might be 447 encountered later in the string. This is different from the behavior 448 described in the documentation, which says: "If strict is set to false, 449 the closest matching encoding will be returned." (Alex Dowad) 450 . mb_strtolower, mb_strtotitle, and mb_convert_case implement conditional 451 casing rules for the Greek letter sigma. For mb_convert_case, conditional 452 casing only applies to MB_CASE_LOWER and MB_CASE_TITLE modes, not to 453 MB_CASE_LOWER_SIMPLE and MB_CASE_TITLE_SIMPLE. (Alex Dowad) 454 . mb_detect_encoding is better able to identify UTF-8 and UTF-16 strings 455 with a byte-order mark. (Alex Dowad) 456 . mb_decode_mimeheader interprets underscores in QPrint-encoded MIME 457 encoded words as required by RFC 2047; they are converted to spaces. 458 Underscores must be encoded as "=5F" in such MIME encoded words. 459 (Alex Dowad) 460 . mb_encode_mimeheader no longer drops NUL (zero) bytes when 461 QPrint-encoding the input string. This previously caused strings in 462 certain text encodings, especially UTF-16 and UTF-32, to be 463 corrupted by mb_encode_mimeheader. (Alex Dowad) 464 . Implement mb_str_pad() RFC. (nielsdos) 465 . Fixed bug GH-11514 (PHP 8.3 build fails with --enable-mbstring enabled). 466 (nielsdos) 467 . Fix use-after-free of mb_list_encodings() return value. (ilutov) 468 . Fixed bug GH-11992 (utf_encodings.phpt fails on Windows 32-bit). (nielsdos) 469 470 - mysqli: 471 . mysqli_fetch_object raises a ValueError instead of an Exception. 472 (David Carlier) 473 474 - Opcache: 475 . Added start, restart and force restart time to opcache's 476 phpinfo section. (Mikhail Galanin) 477 . Fix GH-9139: Allow FFI in opcache.preload when opcache.preload_user=root. 478 (Arnaud, Kapitan Oczywisty) 479 . Made opcache.preload_user always optional in the cli and phpdbg SAPIs. 480 (Arnaud) 481 . Allows W/X bits on page creation on FreeBSD despite system settings. 482 (David Carlier) 483 . Added memfd api usage, on Linux, for zend_shared_alloc_create_lock() 484 to create an abstract anonymous file for the opcache's lock. (Max Kellermann) 485 . Avoid resetting JIT counter handlers from multiple processes/threads. 486 (ilutov) 487 . Fixed COPY_TMP type inference for references. (ilutov) 488 489 - OpenSSL: 490 . Added OPENSSL_CMS_OLDMIMETYPE and PKCS7_NOOLDMIMETYPE contants to switch 491 between mime content types. (Daniel Kesselberg) 492 . Fixed GH-11054: Reset OpenSSL errors when using a PEM public key. 493 (Florian Moser) 494 . Added support for additional EC parameters in openssl_pkey_new. (Eno-CN) 495 496 - PCNTL: 497 . SA_ONSTACK is now set for pcntl_signal. (Kévin Dunglas) 498 . Added SIGINFO constant. (David Carlier) 499 500 - PCRE: 501 . Update bundled libpcre2 to 10.42. (nielsdos) 502 503 - PGSQL: 504 . pg_fetch_object raises a ValueError instead of an Exception. 505 (David Carlier) 506 . pg_cancel use thread safe PQcancel api instead. (David Carlier) 507 . pg_trace new PGSQL_TRACE_SUPPRESS_TIMESTAMPS/PGSQL_TRACE_REGRESS_MODE 508 contants support. (David Carlier) 509 . pg_set_error_verbosity adding PGSQL_ERRORS_STATE constant. (David Carlier) 510 . pg_convert/pg_insert E_WARNING on type errors had been converted to 511 ValueError/TypeError exceptions. (David Carlier) 512 . Added pg_set_error_context_visibility to set the context's visibility 513 within the error messages. (David Carlier) 514 515 - Phar: 516 . Fix memory leak in phar_rename_archive(). (stkeke) 517 518 - POSIX: 519 . Added posix_sysconf. (David Carlier) 520 . Added posix_pathconf. (David Carlier) 521 . Added posix_fpathconf. (David Carlier) 522 . Fixed zend_parse_arg_long's bool pointer argument assignment. (Cristian Rodriguez) 523 . Added posix_eaccess. (David Carlier) 524 525 - Random: 526 . Added Randomizer::getBytesFromString(). (Joshua Rüsweg) 527 . Added Randomizer::nextFloat(), ::getFloat(), and IntervalBoundary. (timwolla) 528 . Enable getrandom() for NetBSD (from 10.x). (David Carlier) 529 . Deprecate MT_RAND_PHP. (timwolla) 530 . Fix Randomizer::getFloat() returning incorrect results under 531 certain circumstances. (timwolla) 532 533 - Reflection: 534 . Fix GH-9470 (ReflectionMethod constructor should not find private parent 535 method). (ilutov) 536 . Fix GH-10259 (ReflectionClass::getStaticProperties doesn't need null return 537 type). (kocsismate) 538 539 - SAPI: 540 . Fixed GH-11141 (Could not open input file: should be sent to stderr). 541 (nielsdos) 542 543 - Session: 544 . Fixed bug GH-11529 (Crash after dealing with an Apache request). (nielsdos) 545 546 - SimpleXML: 547 . Fixed bug GH-12192 (SimpleXML infinite loop when getName() is called 548 within foreach). (nielsdos) 549 . Fixed bug GH-12208 (SimpleXML infinite loop when a cast is used inside a 550 foreach). (nielsdos) 551 . Fixed bug #55098 (SimpleXML iteration produces infinite loop). (nielsdos) 552 553 - Sockets: 554 . Added SO_ATTACH_REUSEPORT_CBPF socket option, to give tighter control 555 over socket binding for a cpu core. (David Carlier) 556 . Added SKF_AD_QUEUE for cbpf filters. (David Carlier) 557 . Added socket_atmark if send/recv needs using MSG_OOB. (David Carlier) 558 . Added TCP_QUICKACK constant, to give tigher control over 559 ACK delays. (David Carlier) 560 . Added DONTFRAGMENT support for path MTU discovery purpose. (David Carlier) 561 . Added AF_DIVERT for raw socket for divert ports. (David Carlier) 562 . Added SOL_UPDLITE, UDPLITE_RECV_CSCOV and UDPLITE_SEND_CSCOV for updlite 563 protocol support. (David Carlier) 564 . Added SO_RERROR, SO_ZEROIZE and SO_SPLICE netbsd and openbsd constants. 565 (David Carlier) 566 . Added TCP_REPAIR for quietly close a connection. (David Carlier) 567 . Added SO_REUSEPORT_LB freebsd constant. (David Carlier) 568 . Added IP_BIND_ADDRESS_NO_PORT. (David Carlier) 569 570 - SPL: 571 . Fixed GH-11573 (RecursiveDirectoryIterator::hasChildren is slow). 572 (nielsdos) 573 574 - Standard: 575 . E_NOTICEs emitted by unserialize() have been promoted to E_WARNING. (timwolla) 576 . unserialize() now emits a new E_WARNING if the input contains unconsumed 577 bytes. (timwolla) 578 . Make array_pad's $length warning less confusing. (nielsdos) 579 . E_WARNING emitted by strtok in the caase both arguments are not provided when 580 starting tokenisation. (David Carlier) 581 . password_hash() will now chain the original RandomException to the ValueError 582 on salt generation failure. (timwolla) 583 . Fix GH-10239 (proc_close after proc_get_status always returns -1). (nielsdos) 584 . Improve the warning message for unpack() in case not enough values were 585 provided. (nielsdos) 586 . Fix GH-11010 (parse_ini_string() now preserves formatting of unquoted 587 strings starting with numbers when the INI_SCANNER_TYPED flag is 588 specified). (ilutov) 589 . Fix GH-10742 (http_response_code emits no error when headers were already 590 sent). (NattyNarwhal) 591 . Added support for rounding negative places in number_format(). 592 (Marc Bennewitz) 593 . Prevent precision loss on formatting decimal integers in number_format(). 594 (Marc Bennewitz) 595 . Added usage of posix_spawn for proc_open when supported by OS. 596 (Cristian Rodriguez) 597 . Added $before_needle argument to strrchr(). (HypeMC) 598 . Fixed GH-11982 (str_getcsv returns null byte for unterminated enclosure). 599 (Jakub Zelenka) 600 . Fixed str_decrement() on "1". (ilutov) 601 602 - Streams: 603 . Fixed bug #51056: blocking fread() will block even if data is available. 604 (Jakub Zelenka) 605 . Added storing of the original path used to open xport stream. 606 (Luc Vieillescazes) 607 . Implement GH-8641 (STREAM_NOTIFY_COMPLETED over HTTP never emitted). 608 (nielsdos, Jakub Zelenka) 609 . Fix bug GH-10406 (fgets on a redis socket connection fails on PHP 8.3). 610 (Jakub Zelenka) 611 . Implemented GH-11242 (_php_stream_copy_to_mem: Allow specifying a maximum 612 length without allocating a buffer of that size). (Jakub Zelenka) 613 . Fixed bug #52335 (fseek() on memory stream behavior different than file). 614 (Jakub Zelenka) 615 . Fixed bug #76857 (Can read "non-existant" files). (Jakub Zelenka) 616 617 - XSLTProcessor: 618 . Fixed bug #69168 (DomNode::getNodePath() returns invalid path). (nielsdos) 619 620 - ZIP: 621 . zip extension version 1.22.0 for libzip 1.10.0. (Remi) 622 . add new error macros (ER_DATA_LENGTH and ER_NOT_ALLOWED). (Remi) 623 . add new archive global flags (ER_AFL_*). (Remi) 624 . add ZipArchive::setArchiveFlag and ZipArchive::getArchiveFlag methods. 625 (Remi)